// 导入express模块
const express = require('express');
// 创建express的服务器实例
const app = express();

// 导入querystring模块
const qs = require('querystring');

// 解析表单数据的中间件
app.use(function(req, res, next) {
  // 定义中间件的逻辑
  let str = ''; // 1, 定义一个字符串，用来存储客户端发送来的请求体数据
  // 2，监听req.on 的data事件
  req.on('data', (chunk) =>{
    str += chunk;
  });

//   3.监听req的end事件
  req.on('end', () => {
    // 在str中存放的是完整的请求体数据
    console.log(str);
    // todo   把字符串格式的请求体数据，解析成对象格式
    const body = qs.parse(str);
    console.log(body);
    req.body = body;
    next();
  });
});

app.post('/user', (req, res) => {
  res.send(req.body);
});

// 调用app.listen方法，指定端口号并启动web服务器
app.listen(80, () => {
  console.log('server running at http://127.0.0.1')
});